package boole.port;

import boole.circuit._PortOwner;
import java.util.HashSet;
import java.util.Set;

/**
 * 
 * @author Thomas Nds nds.thomas@gmail.com
 * @author Rémi PIOTAIX <remi.piotaix@gmail.com>
 */
public class PortSortie extends Port implements _PortSortie {

    private Set<_PortEntree> portsEntree;
    private boolean valeur;

    @Override
    public Set<_PortEntree> getPortsEntree() {
        return portsEntree;
    }

    /**
     *
     * @return la valeur du port
     */
    @Override
    public boolean getValeur() {
        return valeur;
    }

    @Override
    public void setValeur(boolean valeur) {
        this.valeur = valeur;
    }

    public PortSortie(_PortOwner owner) {
        super(owner);
        this.portsEntree = new HashSet();
    }

    @Override
    public void connect(_PortEntree entree) {
        this.portsEntree.add(entree);
    }

    @Override
    public boolean isValid() {
        return portsEntree.size() >0; // Au moins un port d'entrée connecté.
    }
}
